//
//  TSZSQLiteManager.swift
//  微博天下
//
//  Created by Tsz on 15/10/26.
//  Copyright © 2015年 Tsz. All rights reserved.


import Foundation

/// 默认的数据库文件名，如果以db为结尾，容易被发现！
/// SQLite公开的版本不支持加密，如果需要加口令，可以去 github 找一个扩展
private let dbName = "status.db"
class TSZSQLiteManager{
    
    //单例
    static let shareManager = TSZSQLiteManager()
    
    //串行队列
    let queue: FMDatabaseQueue
    
    //数据库队列的初始化
    private init(){
        let path = (NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true).last! as NSString).stringByAppendingPathComponent(dbName)
        print(path)
        
        //打开数据库实例化
        queue = FMDatabaseQueue(path: path)
        
        //创建表
        createTable()
        
    }
    
    /// 创建数据表
    private func createTable() {
        let path = NSBundle.mainBundle().pathForResource("tables.sql", ofType: nil)!
        let sql = try! String(contentsOfFile: path)
        
        queue.inTransaction { (db, rollback) in
            if db.executeStatements(sql) {
                print("创建数据表成功")
            } else {
                print("创建数据表失败")
            }
        }
    }
}
